package com.mzj.saas.commons.enums;

/**
 * 熙照-智能锁事件枚举
 * 
 * @author shun
 * @createDate: 2021年6月28日 下午8:51:18
 * @version: 1.0
 *
 */
public enum XzLockEventTypeEnum {

	/**
	 * 网关在线
	 */
	ONLINE("Online", "网关在线"),
	/**
	 * 网关离线
	 */
	OFFLINE("Offline", "网关离线"),
	/**
	 * 门锁入网
	 */
	ADD_PART("AddPart", "门锁入网"),
	/**
	 * 门锁退网事件
	 */
	DEL_PART("DelPart", "门锁退网事件"),
	/**
	 * 开门锁
	 */
	UN_LOCK("Unlock", "开门锁"),
	/**
	 * 门锁初始化
	 */
	FAC_RESET("FacReset", "门锁初始化"),
	/**
	 * 门锁低电量事件
	 */
	POWER("Power", "门锁低电量事件"),
	/**
	 * 门锁密码改变
	 */
	PWD_CHANGED("PWDchanged", "门锁密码改变"),
	/**
	 * 门锁密码冻结/解冻
	 */
	FREEZE_EVENT("FreezeEvent", "门锁密码冻结/解冻"),
	/**
	 * 门锁门开关状态事件
	 */
	DOOR_STATUS("Doorstatus", "门锁门开关状态事件"),
	/**
	 * 门锁管理员密码改变事件
	 */
	ADMIN_PWD_CHANGED("AdmindPWDchange", "门锁管理员密码改变事件"),
	/**
	 * 其它
	 */
	OTHER("other", "其它");

	private String callBackType;

	private String callBackText;

	XzLockEventTypeEnum(String callBackType, String callBackText) {
		this.callBackType = callBackType;
		this.callBackText = callBackText;
	}

	public String getCallBackType() {
		return callBackType;
	}

	public String getCallBackText() {
		return callBackText;
	}

	public static XzLockEventTypeEnum getLockType(String type) {
		for (XzLockEventTypeEnum s : values()) {
			if (s.callBackType.equals(type)) {
				return s;
			}
		}
		return XzLockEventTypeEnum.OTHER;
	}

	public static String getLockText(String type) {
		for (XzLockEventTypeEnum s : values()) {
			if (s.callBackType.equals(type)) {
				return s.callBackText;
			}
		}
		return OTHER.callBackText;
	}

}
